/**
 * @file lj_ringbuffer_print.h
 * @author Liu Bingyi (cecillearfa@163.com)
 * @brief 
 * @version 0.1
 * @date 2023-08-21
 * 
 * @copyright Copyright (c) 2023 Liu Bingyi
 *  lj-ringbuffer is licensed under Mulan PubL v2.
 *  You can use this software according to the terms and conditions of the Mulan PubL v2.
 *  You may obtain a copy of Mulan PubL v2 at:
 *           http://license.coscl.org.cn/MulanPubL-2.0
 *  THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 *  EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 *  MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 *  See the Mulan PubL v2 for more details.
 *
 *
 *                      Mulan Public License，Version 2
 *
 *  Mulan Public License，Version 2 (Mulan PubL v2)
 *
 *  May 2021 http://license.coscl.org.cn/MulanPubL-2.0
 */

#ifndef _LJ_RINGBUFFER_PRINT_
#define _LJ_RINGBUFFER_PRINT_

#include "lj_ringbuffer.h"
#include "ljdef.h"

#define PRINT_BUFF_LEN 50

enum frame_property {
    title,
    footer,
    text
};

#ifdef __cplusplus
extern "C" {
#endif

int print_buffer(const BUFFER_TYPE* buf, size_t length, const char* buf_name);
int print_buffer_sync(const BUFFER_TYPE* buf, size_t length, const char* buf_name);

int print_ringbuffer(const lj_ringbuffer_t ring);
int print_sync_ringbuffer(const lj_ringbuffer_sync_t ring);

#ifdef __cplusplus
}
#endif

#endif